package com.demandbreakdown.xiyun.model.dto.picture;

import com.demandbreakdown.xiyun.common.base.PageQuery;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 图片查询DTO
 *
 * @author poxz
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Schema(description = "图片查询DTO")
public class PictureQueryDTO extends PageQuery {

    @Schema(description = "空间ID", example = "123")
    private Long spaceId;

    @Schema(description = "图片分类", example = "风景")
    private String category;

    @Schema(description = "标签（精确匹配）- 用于点击标签筛选", example = "旅行")
    private String tag;

    @Schema(description = "搜索关键词（模糊搜索：图片名称、简介、标签）- 用于搜索框输入", example = "风景")
    private String searchText;

    @Schema(description = "审核状态：0-待审核，1-已通过，2-已拒绝", example = "1")
    private Integer reviewStatus;

    @Schema(description = "排序方式：newest-最新上传，popular-最受欢迎，download-下载最多", example = "newest")
    private String sortBy;

    /**
     * 用户ID（内部使用）
     */
    private Long userId;
}
